package com.example.robertluozizhao.java.design.adapter;

/**
 * 适配器模式（结构型）
 *
 * 假设Person 拥有购物行为buy
 * 购买商品以前我们用的是现金支付（cash）
 * 但现在可以用支付宝（Zfb），微信支付了，所以商家要在现金支付上兼容其他支付方式
 */
public class TestResult {
    public static void main(String args[]) {
        //以前的购买模式
        LiMing liMing = new LiMing();
        CashImpl cash = new CashImpl();
        liMing.buy(cash);
        //现在商店在支持现金支付方式上(不改变现金支付接口前提)，增加支付宝支付方式
        ZbfImpl zbf = new ZbfImpl();
        ZfbAdapter zfbAdapter = new ZfbAdapter(zbf);
        liMing.buy(zfbAdapter);
    }
}
